package com.sheng.leetcode.year2025.month09.day15;

import org.junit.Test;

/**
 * @author by ls
 * @date 2025/9/15
 * <p>
 * 1935. 可以输入的最大单词数<p>
 * <p>
 * 键盘出现了一些故障，有些字母键无法正常工作。而键盘上所有其他键都能够正常工作。<p>
 * 给你一个由若干单词组成的字符串 text ，单词间由单个空格组成（不含前导和尾随空格）；<p>
 * 另有一个字符串 brokenLetters ，由所有已损坏的不同字母键组成，返回你可以使用此键盘完全输入的 text 中单词的数目。<p>
 * <p>
 * 示例 1：<p>
 * 输入：text = "hello world", brokenLetters = "ad"<p>
 * 输出：1<p>
 * 解释：无法输入 "world" ，因为字母键 'd' 已损坏。<p>
 * <p>
 * 示例 2：<p>
 * 输入：text = "leet code", brokenLetters = "lt"<p>
 * 输出：1<p>
 * 解释：无法输入 "leet" ，因为字母键 'l' 和 't' 已损坏。<p>
 * <p>
 * 示例 3：<p>
 * 输入：text = "leet code", brokenLetters = "e"<p>
 * 输出：0<p>
 * 解释：无法输入任何单词，因为字母键 'e' 已损坏。<p>
 * <p>
 * 提示：<p>
 * 1 <= text.length <= 10^4<p>
 * 0 <= brokenLetters.length <= 26<p>
 * text 由若干用单个空格分隔的单词组成，且不含任何前导和尾随空格<p>
 * 每个单词仅由小写英文字母组成<p>
 * brokenLetters 由 互不相同 的小写英文字母组成<p>
 */
public class LeetCode1935 {

    @Test
    public void test() {
//        String text = "hello world", brokenLetters = "ad";
//        String text = "leet code", brokenLetters = "lt";
//        String text = "leet code", brokenLetters = "e";
        String text = "abc de", brokenLetters = "";
        System.out.println(new Solution().canBeTypedWords(text, brokenLetters));
    }
}

class Solution {
    public int canBeTypedWords(String text, String brokenLetters) {
        int ans = 0;
        String[] textSplit = text.split(" ");
        String[] split = brokenLetters.split("");
        for (String value : textSplit) {
            boolean flag = true;
            for (String string : split) {
                if (!"".equals(string) && value.contains(string)) {
                    flag = false;
                    break;
                }
            }
            if (flag) {
                ans++;
            }
        }
        return ans;
    }
}
